#pragma once
#include "TypeDefs.h"
#include "vector3.h"
#define POINT_PLANE 0
#define POINT_POSITIVE 1
#define POINT_NEGATIVE -1
class plane
{
public:
	plane(void);
	plane(float a, float b, float c, float d);
	~plane(void);
	//Checks if a point is in the plane or outside it in negative or positive halfspace
	int ClassifyPoint(const vector3 &point) const;
	plane Normalize() const;
public:
	vector3 normal;
	vector3 planePoint;
	float distance;
};

